/**
 * \file include.c
 * \brief Quelques fonctions générales à tout le programme.
 *
 * Ce fichier contient quelques fonctions que l'on peut utiliser
 * partout, regroupées ici pour éviter une duplication du code.
 * Par exemple, pour trouver la taille d'un fichier.
 *
 */



#include "include.h"

void prompt() {
  printf("\nEntrez votre commande : ");
}

int error_msg(char *msg){
    perror(msg);
    exit(0);
}

void vide_buffer(char buffer[], int n){
  int i;
  for (i = 0; i<n; i++){
    buffer[i] = '\0';
  }
}


int taille_fichier_fd(FILE * fd){


  fseek(fd, 0, SEEK_END); // Mettre le pointeur à la fin du fichier
  int size = ftell(fd); // Récupérer la valeur du pointeur
  fseek(fd, 0, SEEK_SET); // Remettre le pointeur au début du fichier

  return size;

  }


long taille_fichier(char * nom_fichier){
    FILE * fd;
    long taille;

    fd = fopen(nom_fichier,"r"); 

    if (fd!= NULL)
    {
      fseek(fd, 0, SEEK_END); 
      taille = ftell(fd);
      fseek(fd, 0, SEEK_SET);
    }
    else{
      taille = 0;
      perror("Erreur à la lecture de la taille du fichier.");
      }

    fclose(fd);
    
    return taille;
}

char* get_my_ip() {
    int size_buf=200;
    char buf [size_buf] ;
    struct hostent * Host;
    gethostname ( buf , size_buf) ;

    Host = ( struct hostent * ) gethostbyname (buf);
    return inet_ntoa(*((struct in_addr *)Host->h_addr));
} 



/********************************************************************/

